# 在需要的时候，你可以重新加载模型  
import pandas as pd
from keras.models import load_model
from sklearn.preprocessing import MinMaxScaler

# 读取数据
df = pd.read_excel('datas.xlsx', engine='openpyxl')  # 假设文件名为datas.xlsx
# 选择特征和目标变量
X = df[['正面信息', '负面信息', '中性信息', '拥堵指数', '物价指数']].values

# 数据标准化
scaler = MinMaxScaler()
X = scaler.fit_transform(X)

# 加载模型
loaded_model = load_model('my_model.h5')



# 假设你有一个新的数据点，存储在字典中
new_data = {
    '正面信息': 2656,
    '负面信息': 300,
    '中性信息': 9565,
    '拥堵指数': 3.0,
    '物价指数': 14.59
}

# 将这个数据点转换为DataFrame

new_data_df = pd.DataFrame([new_data])

# 使用相同的scaler（用于训练数据的scaler）来转换新数据

new_data_scaled = scaler.transform(new_data_df[['正面信息', '负面信息', '中性信息', '拥堵指数', '物价指数']])

# 确保新数据的形状是正确的，即它是一个二维数组，即使只有一个样本

new_data_scaled = new_data_scaled.reshape(1, -1)  # 转换为(1, 5)的形状

# 现在你可以使用loaded_model来预测新的数据

predictions = loaded_model.predict(new_data_scaled)

# 打印预测结果

print(f"Predicted 承压指数: {predictions[0][0]}")